home *** CD-ROM | disk | FTP | other *** search
/ Gekkan Dennou Club 145 / Gekkan Dennou Club - 2000.6 Vol. 145 (Japan).7z / Gekkan Dennou Club - 2000.6 Vol. 145 (Japan) (Track 1).bin / games / spassion / source.lzh / SOURCE / SPASSION.H < prev    next >
Text File  |  2000-03-25  |  2KB  |  95 lines

  1. /* SPASSION.H */
  2.  
  3. /*#define DEBUG*/            /* デバッグモード */
  4.  
  5. #define STAGES            4            /* 総面数 */
  6. #define SHOT_TYPES        2
  7. #define POW_LEVELS        3
  8. #define LASER_BUF_MAX    32
  9. #define SPEED_MAX        32
  10.  
  11. #define MODE_1P        0
  12. #define MODE_2P        1
  13.  
  14.  
  15. #ifdef GLOBAL_DEFINE        /* グローバル変数の定義と宣言を1つにまとめるテク */
  16. #define Extern                /* Extern をヌル文字列に置換 */
  17. #else
  18. #define Extern extern        /* Extern を extern に置換 */
  19. #endif
  20.  
  21.  
  22. /* グローバル変数 */
  23. Extern char        stage;        /* 面数(1面=0) */
  24. Extern short    level;        /* 難易度 */
  25. Extern short    play_mode;    /* 1Playか2Play(今回は1Playのみ) */
  26. Extern short    game_state;
  27.  
  28. Extern short error_level;    /* 起動時のエラーチェック */
  29. Extern char *error_message;
  30.  
  31. Extern unsigned char    angle_tbl[256][256];
  32. Extern signed int vx_tbl[SPEED_MAX][256], vy_tbl[SPEED_MAX][256];
  33. Extern short pt_rot[256];
  34. Extern short info_rot[256];
  35. Extern unsigned char rndtable[256];
  36.  
  37.  
  38. Extern short obj_moji, obj_item, obj_player, obj_option, obj_shot, obj_shot_b,
  39.              obj_zako, obj_zako_k, obj_hatch, obj_mine, obj_obj, obj_obj_b,
  40.              obj_boss_m00, obj_boss_m01, obj_dragon,
  41.              obj_boss1, obj_boss2, obj_boss3, obj_boss4, obj_lboss,
  42.              obj_effect, obj_explall, obj_hahen, obj_titspark;
  43.  
  44. Extern int        map_x,map_y,map_vx,map_vy;
  45. Extern short    map_width,map_height;
  46. Extern unsigned short *bg_map[STAGES];
  47. Extern unsigned char  bg_sp[STAGES][32 * 256];
  48. Extern unsigned short bg_pal[STAGES][16];
  49. Extern int        gr1_x,gr1_y,gr1_vx,gr1_vy,gr2_x,gr2_y,gr2_vx,gr2_vy;
  50. Extern short    bg_x,bg_y;
  51.  
  52. Extern char        disp_level;        /* 表示負荷レベル */
  53. Extern short    xsp_mode_num;    /* XSPの表示レベル */
  54. Extern short    pcm_mode;        /* 1なら効果音を鳴らす */
  55.  
  56.  
  57. #ifdef DEBUG
  58. Extern short eshot_sum;
  59. Extern short enemy_sum;
  60. #endif
  61.  
  62.  
  63. enum {
  64.     ERROR_NON = 0,        /* エラーなし */
  65.     ERROR_FILE,            /* ファイルが読み込めなかった */
  66.     ERROR_MUSIC,        /* 音楽関係 */
  67. };
  68.  
  69. enum {
  70.     DISP_LEVEL_LOW = 0,    /* 表示負荷を軽目に */
  71.     DISP_LEVEL_MID,
  72.     DISP_LEVEL_HIGH,
  73. };
  74.  
  75. /* 難易度 */
  76. enum { EASY = 0, NOMAL, HARD };
  77.  
  78. enum { IN_TITLE = 0, IN_GAME, IN_GAME_OVER, END_STAGE, ENDING };
  79.  
  80. typedef struct HIT_XY4{
  81.     signed short    x1,y1,x2,y2;
  82. }HIT_XY4;
  83.  
  84. typedef struct HIT_XY{
  85.     signed short    x,y;
  86. }HIT_XY;
  87.  
  88. typedef struct BOX_PTR{
  89.     short    x1;
  90.     short    y1;
  91.     short    x2;
  92.     short    y2;
  93.     unsigned short    color;
  94. }BOX_PTR;
  95.